package com.ruoyi.supplier.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 采购明细业务对象
 *
 * @author ruoyi
 * @date 2023-09-18
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class PurchaseItemBo extends BaseEntity {

    /**
     * 
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Integer purchaseItemId;

    /**
     * 供货商商户ID
     */
    @NotNull(message = "供货商商户ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long merchantId;

    /**
     * 采购商品的skuid
     */
    @NotNull(message = "采购商品的skuid不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer productSkuId;

    /**
     * 采购数量
     */
    @NotNull(message = "采购数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer shouldNum;

    /**
     * 出库数量
     */
    @NotNull(message = "出库数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer actualNum;

    /**
     * 缺货数量
     */
    @NotNull(message = "缺货数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer lackNum;

    /**
     * 含绒量
     */
    @NotNull(message = "含绒量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal percent;

    /**
     * 检验标准
     */
    @NotNull(message = "检验标准不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer standard;

    /**
     * 采购价
     */
    @NotNull(message = "采购价不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal purchasePrice;

    /**
     * 位置编号
     */
    @NotNull(message = "位置编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer positionNo;

    /**
     * 批次号(当天有效)
     */
    @NotBlank(message = "批次号(当天有效)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String batchNo;

    /**
     * 订单编号
     */
    @NotNull(message = "订单编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer orderId;

    /**
     * 店铺id
     */
    @NotNull(message = "店铺id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer shopId;

    /**
     * 店铺商品sku id
     */
    @NotNull(message = "店铺商品sku id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long shopSkuId;

    /**
     * 主图
     */
    @NotBlank(message = "主图不能为空", groups = { AddGroup.class, EditGroup.class })
    private String image;

    /**
     * 主图类型（1图片 2视频）
     */
    @NotNull(message = "主图类型（1图片 2视频）不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer imageType;

    /**
     * 视频链接
     */
    @NotBlank(message = "视频链接不能为空", groups = { AddGroup.class, EditGroup.class })
    private String video;

    /**
     * 产品名称
     */
    @NotBlank(message = "产品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String productName;


}
